package cn.tannn.cat.file.server.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.Objects;

/**
 * 日志数据类型
 *
 * @author <a href="https://tannn.cn/">tan</a>
 * @date 2024/3/19 13:38
 */
@AllArgsConstructor
@Getter
public enum LogDataType {

    /**
     * 存储起配置
     */
    CONFIG("config", "存储起配置"),

    /**
     * 文件存储索引
     */
    DELETE("storage", "文件存储索引"),

    /**
     * 字典
     */
    DICT("dict", "字典");



    /**
     * 数据
     */
    private final String data;

    /**
     * 注释
     */
    private final String remark;


    /**
     * 获取枚举实例
     *
     * @param type 类型
     * @return DictType
     */
    public static LogDataType fromValue(String type) {
        for (LogDataType dictType : LogDataType.values()) {
            if (Objects.equals(type, dictType.getData())) {
                return dictType;
            }
        }
        throw new IllegalArgumentException();
    }
}
